This page last changed on Feb 04, 2010 by kgomes.

This page details out the data model that exists in the database to back the object model.

Notes

  • I've written a basic CRUD test so I know that it can insert and delete trees of objects. Beyond that we'll have to work things out.
  • At this point there is NO business logic implemented. If a transaction breaks some database rule, for example, trying to insert a ConsumableAmount without a ConsumableType, an Exception will be thrown.
  • Collections are lazy loaded but I haven't written any unit tests to verify that they're working.
  • I had some issues with the ConsumableAmount table. It's a many-to-many join table with an extra column for storing a value. JPA hates that. (You have to have the primary keys for both the ConsumableType and PhaseType BEFORE inserting the ConsumableAmount; so ConsumableAmount would've need to be handled is separate transactions.) The workaround was to add an id column; it's not pretty but it works.
  • All testing has been done against FOG. Is this copacetic or should I start setting up MySQL for developing against?
  • All transactions are currently handled through a single EAO object.
  • The ESP-DAL (<- Data Access Layer) build uses Maven 2. A dependency graph is available at here

ESP - Data Model UML.pdf (application/pdf)
ESP - Data Model Dependencies.png (image/png)
Model Classes.jpg (image/jpeg)
Model Classes.jpg (image/jpeg)
data model.jpg (image/jpeg)
Document generated by Confluence on Feb 03, 2026 14:16